package com.mesnac.user.action;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.URLDecoder;
import java.util.Date;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import org.apache.struts2.ServletActionContext;

import com.mesnac.comm.filetransform.FileTransformUtil;
import com.mesnac.comm.sysinfo.SysInfo;
import com.mesnac.comm.util.DateFormat;
import com.mesnac.filemgr.biz.CreateDirMgr;
import com.mesnac.filemgr.biz.DelDirMgr;
import com.mesnac.filemgr.biz.DelFileMgr;
import com.mesnac.filemgr.biz.DownloadFileMgr;
import com.mesnac.filemgr.biz.FileDirector;
import com.mesnac.filemgr.biz.JsonDirByPath;
import com.mesnac.filemgr.biz.UpdateFileMgr;
import com.mesnac.filemgr.biz.UploadFileMgr;
import com.mesnac.filemgr.entity.FileInfor;
import com.mesnac.filemgr.entity.PageFileType;
import com.mesnac.filemgr.entity.SearchCondition;
import com.mesnac.user.biz.UserBiz;
import com.mesnac.user.entity.User;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport {

	private UserBiz userbiz;
	// private FileDirector filebiz; 这个也没什么用
	private User user = new User();
	private FileInfor fileInfor = new FileInfor();
	private File file;// 上传的文件
	private String fileFileName;// 上传文件的名字
	private String fileContentType;// 上传文件的类型
	private FileInfor uploadFileInfor = new FileInfor();// 上传文件的信息
	private String selectFileName;
	private final String rootPath = SysInfo.rootpath;
	private String currentPath;// 当前路径
	private InputStream inputStream;
	private String downloadFileName;// 下载的文件名
	private String dtmpFileName;// 下载文件名，没经过转化的
	private String oldName;// 旧文件名
	private String oldpwd;
	private String newpwd;
	private String uploadTitle;
	private String uploadDescribe;
	private String uploadKeywords;
	private String uploadVersionDescribe;

	private SearchCondition scondition;

	public SearchCondition getScondition() {
		return scondition;
	}

	public void setScondition(SearchCondition scondition) {
		this.scondition = scondition;
	}

	public String getOldName() {
		return oldName;
	}

	public void setOldName(String oldName) {
		this.oldName = oldName;
	}

	public String getDtmpFileName() {
		return dtmpFileName;
	}

	public void setDtmpFileName(String dtmpFileName) {
		this.dtmpFileName = dtmpFileName;
	}

	/**
	 * 中文文件名
	 * 
	 * @return
	 * @throws Exception
	 */
	public String getDownloadFileName() throws Exception {
		String downFileName = dtmpFileName;
		String filename = dtmpFileName;
		// 这个地方真纠结，不同浏览器对编码的支持不同
		HttpServletRequest request = ServletActionContext.getRequest();
		String agent = request.getHeader("USER-AGENT");
		if (null != agent) {
			if (-1 != agent.indexOf("Firefox")) {
				filename = new String(downFileName.getBytes("UTF-8"),
						"ISO8859-1");
			} else if (-1 != agent.indexOf("Chrome")) {
				filename = new String(downFileName.getBytes("UTF-8"),
						"ISO8859-1");
			} else {
				filename = new String(downFileName.getBytes(), "ISO8859-1");
			}
		}

		return filename;
	}

	public void setDownloadFileName(String downloadFileName) throws Exception {
		// downloadFileName = new
		// String(downloadFileName.getBytes("ISO8859-1"),"UTF-8");
		this.downloadFileName = downloadFileName;
	}

	public String getSelectFileName() {
		return selectFileName;
	}

	public void setSelectFileName(String selectFileName) {
		this.selectFileName = selectFileName;
	}

	/**
	 * 登录
	 * 
	 * @return
	 * @throws Exception
	 */
	public String login() throws Exception {
		// System.out.println("user" + user.getUserid() + user.getPassword());
		boolean canlogin = userbiz.login(user);
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		if (canlogin) {
			// System.out.println(canlogin);
			// 将用户加入到session中
			user = userbiz.getUser(user);
			ActionContext.getContext().getSession().put("user", user);
			out.print("{success:true,msg:\'OK\'}");
			out.flush();
			return null;
		} else {
			out.print("{success:true,msg:\'ERROR\'}");
			out.flush();
			return null;
		}

	}

	/**
	 * 修改密码
	 * 
	 * @return
	 * @throws Exception
	 */
	public String changepwd() throws Exception {
		User user = (User) ActionContext.getContext().getSession().get("user");
		System.out.println(user.getUserid());
		HttpServletRequest request = ServletActionContext.getRequest();

		oldpwd = request.getParameter("oldpwd");
		newpwd = request.getParameter("newpwd");
		System.out.println(oldpwd);
		System.out.println(newpwd);
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		if (userbiz.changepwd(user, oldpwd, newpwd)) {

			out.print("{success:true,msg:\'OK\'}");
			System.out.println("yes");
		} else {
			out.print("{success:true,msg:\'ERROR\'}");
			System.out.println("no");
		}
		out.flush();
		return null;
	}

	/**
	 * 重新设置当前路径
	 * 
	 * @return
	 * @throws Exception
	 */
	public String doCurrentPath() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		this.currentPath = request.getParameter("currentPath");
		// System.out.println(currentPath);
		this.currentPath = rootPath + File.separator + currentPath;
		// System.out.println(currentPath);
		ActionContext.getContext().getSession().put("currentPath", currentPath);
		return null;
	}

	/**
	 * 获得路径下，文件目录的信息,这个有个一个extjs的bug，哎，各种问题
	 * 
	 * @return
	 * @throws Exception
	 */
	public String doPathList() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		JsonDirByPath a = new JsonDirByPath();
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		// 这里有分页的
		int start = Integer.valueOf(request.getParameter("start"));
		int limit = Integer.valueOf(request.getParameter("limit"));

		JSONObject resultjson = a.getJsonDirAndFileByPath(currentPath, start,
				limit);

		HttpServletResponse response = ServletActionContext.getResponse();

		response.setCharacterEncoding("UTF-8");
		String cb = request.getParameter("callback");
		boolean jsonP = false;
		if (cb != null) {
			jsonP = true;
			response.setContentType("text/javascript");
		} else {
			response.setContentType("application/x-json");
		}
		PrintWriter out = response.getWriter();
		if (jsonP) {
			out.write(cb + "(");
		}
		out.write(resultjson.toString());
		if (jsonP) {
			out.write(");");
		}
		out.flush();
		return null;
	}

	/**
	 * 搜索该路径下的目录文件信息
	 * 
	 * @return
	 * @throws Exception
	 */
	public String getCurFileList() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		JsonDirByPath a = new JsonDirByPath();
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		// 这里有分页的
		int start = Integer.valueOf(request.getParameter("start"));
		int limit = Integer.valueOf(request.getParameter("limit"));
		String searchname = URLDecoder.decode(request
				.getParameter("searchname"), "UTF-8");

		JSONObject resultjson = a.searchFileByName(currentPath, start, limit,
				searchname);

		HttpServletResponse response = ServletActionContext.getResponse();

		response.setCharacterEncoding("UTF-8");
		String cb = request.getParameter("callback");
		boolean jsonP = false;
		if (cb != null) {
			jsonP = true;
			response.setContentType("text/javascript");
		} else {
			response.setContentType("application/x-json");
		}
		PrintWriter out = response.getWriter();
		if (jsonP) {
			out.write(cb + "(");
		}
		out.write(resultjson.toString());
		if (jsonP) {
			out.write(");");
		}
		out.flush();
		return null;
	}

	/**
	 * 搜索所有
	 * 
	 * @return
	 * @throws Exception
	 */
	public String searchAllFileList() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		JsonDirByPath a = new JsonDirByPath();
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		// 这里有分页的
		int start = Integer.valueOf(request.getParameter("start"));
		int limit = Integer.valueOf(request.getParameter("limit"));
		String searchname = URLDecoder.decode(request
				.getParameter("searchname"), "UTF-8");

		String type = request.getParameter("type");
		type = PageFileType.getStrType(type);

		String skeywords = null;
		if (request.getParameter("skeywords") != null
				&& request.getParameter("skeywords") != "")
			skeywords = URLDecoder.decode(request.getParameter("skeywords"),
					"UTF-8");
		String sname = null;
		if (request.getParameter("sname") != null
				&& request.getParameter("sname") != "")
			sname = URLDecoder.decode(request.getParameter("sname"), "UTF-8");
		Date begindate = null;
		if (request.getParameter("startdt") != null
				&& request.getParameter("startdt") != "")
			begindate = DateFormat.parseStr(request.getParameter("startdt"));
		Date enddate = null;
		if (request.getParameter("enddt") != null
				&& request.getParameter("enddt") != "")
			enddate = DateFormat.parseStr(request.getParameter("enddt"));

		SearchCondition condition = new SearchCondition();
		condition.setFilename(searchname);
		condition.setType(type);
		condition.setBegintime(begindate);
		condition.setEndtime(enddate);
		condition.setContributor(sname);
		// System.out.println("keywords="+skeywords);
		condition.setKeywords(skeywords);

		// System.out.println(condition.getContributor()+condition.getFilename()+condition.getKeywords()+condition.getLocation()+condition.getType()+condition.getBegintime()+condition.getEndtime());
		JSONObject resultjson = a
				.searchFileByCondition(condition, start, limit);

		HttpServletResponse response = ServletActionContext.getResponse();

		response.setCharacterEncoding("UTF-8");
		String cb = request.getParameter("callback");
		boolean jsonP = false;
		if (cb != null) {
			jsonP = true;
			response.setContentType("text/javascript");
		} else {
			response.setContentType("application/x-json");
		}
		PrintWriter out = response.getWriter();
		if (jsonP) {
			out.write(cb + "(");
		}
		out.write(resultjson.toString());
		if (jsonP) {
			out.write(");");
		}
		out.flush();
		return null;
	}

	public String showPic() throws Exception {
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		HttpServletRequest request = ServletActionContext.getRequest();

		String picname = request.getParameter("picname");
		System.out.println(picname);
		String srcpic = currentPath+File.separator+picname;
		String outpic = SysInfo.tomcatwebapp+"/flexpaper"+File.separator+"tmp.jpg";
		FileInputStream in = new FileInputStream(new File(srcpic));
		FileOutputStream out = new FileOutputStream(new File(outpic));
		while(true){
			byte[] b = new byte[10240];
			int readline = in.read(b);
			if(readline == -1){
				in.close();
				out.flush();
				out.close();
				break;
			}else{
				out.write(b);
			}
		}
		
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter outp = response.getWriter();
		outp.print("{success:true,msg:\'OK\'}");
		outp.flush();
		return null;
	}

	/**
	 * 删除文件
	 * 
	 * @return
	 * @throws Exception
	 */
	public String delFile() throws Exception {
		FileDirector a = new FileDirector(new DelFileMgr());
		HttpServletRequest request = ServletActionContext.getRequest();
		String[] filelist = request.getParameterValues("filelist");
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		for (int i = 0; i < filelist.length; i++) {
			// System.out.println(filelist[i]);
			a.execute(null, currentPath, filelist[i], null, null);
		}
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		out.print("{success:true,msg:\'OK\'}");
		return null;
	}

	/**
	 * 上传新版本
	 * 
	 * @return
	 * @throws Exception
	 */
	public String updateFile() throws Exception {

		HttpServletResponse response = ServletActionContext.getResponse();

		response.setContentType("text/html");
		response.setCharacterEncoding("UTF-8");
		PrintWriter out = response.getWriter();

		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		User user = (User) ActionContext.getContext().getSession().get("user");

		HttpServletRequest request = ServletActionContext.getRequest();
		oldName = URLDecoder.decode(request.getParameter("oldname"), "UTF-8");
		// oldName = new String(oldName.getBytes("ISO-8859-1"),"UTF-8");
		// System.out.println("ddfdfwhy");
		System.out.println("dfdfd" + oldName);
		if (!oldName.equalsIgnoreCase(fileFileName)) {
			out.print("{success:true,msg:\'NAME\'}");
			out.flush();
			return NONE;
		}
		uploadFileInfor = new FileInfor();

		uploadFileInfor.setFilemaster(user.getUsername());
		uploadFileInfor.setVersionDescribe(uploadVersionDescribe);
		uploadFileInfor.setFileTitle(uploadTitle);
		uploadFileInfor.setDescribe(uploadDescribe);
		uploadFileInfor.setKeywords(uploadKeywords);
		uploadFileInfor.setFileName(fileFileName);
		uploadFileInfor
				.setFilePath(currentPath + File.separator + fileFileName);
		// 单位是K
		uploadFileInfor.setFileSize((file.length() / 1024) + "K");
		// 根据文件名来获得类型
		String[] types = fileFileName.split("\\.");
		String fileType = "";
		if (types.length > 0)
			fileType = types[types.length - 1];
		uploadFileInfor.setFileType(fileType);
		uploadFileInfor.setUploadtime(new Date());

		FileDirector a = new FileDirector(new UpdateFileMgr());
		boolean flag = a.execute(uploadFileInfor, currentPath, oldName, null,
				file);

		// 上传失败

		if (flag)
			out.print("{success:true,msg:\'OK\'}");
		else
			out.print("{success:true,msg:\'FAIL\'}");

		return NONE;
	}

	/**
	 * 获得左边的树形目录
	 * 
	 * @return
	 * @throws Exception
	 */
	public String getDirJsonTree() throws Exception {
		JsonDirByPath a = new JsonDirByPath();
		JSONArray resultjson = a.getJsonDirByPath(rootPath);
		HttpServletResponse response = ServletActionContext.getResponse();
		response.setContentType("text/javascript");
		response.setCharacterEncoding("UTF-8");
		PrintWriter out = response.getWriter();
		out.write(resultjson.toString());
		out.flush();
		return null;
	}

	/*
	 * 上传文件
	 */
	public String uploadFile() throws Exception {

		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		User user = (User) ActionContext.getContext().getSession().get("user");

		uploadFileInfor = new FileInfor();

		uploadFileInfor.setDownloadtimes(0);
		uploadFileInfor.setDescribe(uploadDescribe);
		uploadFileInfor.setFileTitle(uploadTitle);
		uploadFileInfor.setKeywords(uploadKeywords);

		uploadFileInfor.setFilemaster(user.getUsername());
		// System.out.println(user.getUsername());
		System.out.println("ddd" + user.getUserid());
		System.out.println("====" + uploadFileInfor.getKeywords());
		System.out.println("**" + uploadFileInfor.getFileTitle());
		uploadFileInfor.setFileName(fileFileName);
		uploadFileInfor
				.setFilePath(currentPath + File.separator + fileFileName);
		// 单位是K
		uploadFileInfor.setFileSize((file.length() / 1024) + "K");
		// 根据文件名来获得类型
		String[] types = fileFileName.split("\\.");
		String fileType = "";
		if (types.length > 0)
			fileType = types[types.length - 1];
		uploadFileInfor.setFileType(fileType);
		uploadFileInfor.setUploadtime(new Date());
		uploadFileInfor.setVersion(1);

		FileDirector a = new FileDirector(new UploadFileMgr());
		// 上传失败
		boolean flag = a
				.execute(uploadFileInfor, currentPath, null, null, file);

		HttpServletResponse response = ServletActionContext.getResponse();

		response.setContentType("text/html");
		response.setCharacterEncoding("UTF-8");
		PrintWriter out = response.getWriter();
		if (flag)
			out.print("{success:true,msg:\'OK\'}");
		else
			out.print("{success:true,msg:\'FAIL\'}");
		System.out.println("WHY>????");
		return NONE;

	}

	@Override
	public void addActionError(String anErrorMessage) {
		// 从国际化中取值
		if (anErrorMessage
				.startsWith("the request was rejected because its size")) {
			super.addActionError(getText("struts.multipart.maxSize.limit"));
			HttpServletResponse response = ServletActionContext.getResponse();

			response.setContentType("text/html");
			response.setCharacterEncoding("UTF-8");
			try {
				PrintWriter out = response.getWriter();
				System.out.println("yes");
				out.print("{success:true,msg:\'SIZE\'}");
				out.flush();
			} catch (Exception e) {
				e.printStackTrace();
			}

			System.out.println("dfdfdfdfdfdfdfdf");

		} else {
			super.addActionError(anErrorMessage);
			System.out.println("efefefefefefefeefef");
		}

	}

	public String downloadFile() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		System.out.println(request.getParameter("filename"));
		dtmpFileName = URLDecoder.decode(request.getParameter("filename"),
				"UTF-8");
		System.out.println("dtmpFile" + dtmpFileName);
		String agent = request.getHeader("USER-AGENT");
		/*
		 * if (null != agent) { if (-1 != agent.indexOf("Firefox")) {
		 * dtmpFileName = new String(dtmpFileName.getBytes("ISO-8859-1"),
		 * "UTF-8"); } else if (-1 != agent.indexOf("Chrome")) { dtmpFileName =
		 * new String(dtmpFileName.getBytes("ISO-8859-1"), "UTF-8"); } }
		 */
		// dtmpFileName = new String(dtmpFileName.getBytes("ISO-8859-1"),
		// "UTF-8");
		System.out.println("dddd" + dtmpFileName);
		return "success";
	}

	/*
	 * 下载文件
	 */
	public InputStream getInputStream() throws Exception {
		try {
			String currentPath = (String) ActionContext.getContext()
					.getSession().get("currentPath");

			selectFileName = currentPath + File.separator + dtmpFileName;
			// System.out.println(selectFileName);
			FileDirector a = new FileDirector(new DownloadFileMgr());
			a.execute(null, currentPath, dtmpFileName, null, null);

			FileInputStream result = new FileInputStream(selectFileName);
			return result;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;

	}

	public String register() throws Exception {

		userbiz.register(user);

		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		out.print("{success:true,msg:\'OK\'}");
		out.flush();
		return null;
	}

	public String checkuserid() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		String userid = request.getParameter("userid");
		System.out.println(userid);
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		if (userbiz.checkuserid(userid)) {
			out.print("{success:true,msg:\'OK\'}");
			out.flush();

		} else {
			out.print("{success:true,msg:\'ERROR\'}");
			out.flush();
		}
		return null;
	}

	/**
	 * 创建文件夹
	 * 
	 * @return
	 * @throws Exception
	 */
	public String createDir() throws Exception {
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		HttpServletRequest request = ServletActionContext.getRequest();

		String dirname = request.getParameter("dirname");
		System.out.println(dirname);
		FileDirector a = new FileDirector(new CreateDirMgr());
		a.execute(null, currentPath, dirname, null, null);
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		out.print("{success:true,msg:\'OK\'}");
		out.flush();
		return null;

	}

	/**
	 * 删除文件夹
	 * 
	 * @return
	 * @throws Exception
	 */
	public String removeDir() throws Exception {
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");
		HttpServletRequest request = ServletActionContext.getRequest();

		String dirname = request.getParameter("dirname");
		System.out.println(dirname);
		FileDirector a = new FileDirector(new DelDirMgr());
		a.execute(null, currentPath, dirname, null, null);
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		out.print("{success:true,msg:\'OK\'}");
		out.flush();
		return null;
	}

	/**
	 * 获得当前路径
	 * 
	 * @return
	 * @throws Exception
	 */
	public String getcurPath() throws Exception {
		String curpath = (String) ActionContext.getContext().getSession().get(
				"currentPath");
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		// System.out.println("username" + username);
		out.print("{success:true,msg:\'" + curpath + "\'}");
		System.out.println(curpath);
		out.flush();
		return null;
	}

	public String getUserName() throws Exception {
		String username = ((User) ActionContext.getContext().getSession().get(
				"user")).getUserid();
		HttpServletResponse response = ServletActionContext.getResponse();
		PrintWriter out = response.getWriter();
		// System.out.println("username" + username);
		out.print("{success:true,msg:\'" + username + "\'}");
		out.flush();
		return null;
	}

	public String preview() throws Exception {
		String currentPath = (String) ActionContext.getContext().getSession()
				.get("currentPath");

		HttpServletRequest request = ServletActionContext.getRequest();
		HttpServletResponse response = ServletActionContext.getResponse();
		String filename = request.getParameter("filename");

		FileTransformUtil tran = new FileTransformUtil();
		String sourcefile = currentPath + File.separator + filename;
		// System.out.println("filename"+filename);
		// String swf = filename.split("\\.")[0];
		String swf = "tmp";
		// System.out.println("dfdfdf"+swf);
		File docFile = new File(sourcefile);

		InputStream input = new FileInputStream(docFile);
		File a = new File("");
		// System.out.println(a.getCanonicalPath());
		tran.document2swf(sourcefile, input, swf,
				SysInfo.tomcatwebapp);

		System.out.println("=====");
		System.out.println(filename);
		PrintWriter out = response.getWriter();
		// System.out.println("username" + username);
		out.print("{success:true,msg:\'OK\'}");
		out.flush();
		return null;
	}

	public UserBiz getUserbiz() {
		return userbiz;
	}

	public void setUserbiz(UserBiz userbiz) {
		this.userbiz = userbiz;
	}

	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	public File getFile() {
		return file;
	}

	public void setFile(File file) {
		this.file = file;
	}

	public String getFileFileName() {
		return fileFileName;
	}

	public void setFileFileName(String fileFileName) {
		this.fileFileName = fileFileName;
	}

	public FileInfor getFileInfor() {
		return fileInfor;
	}

	public void setFileInfor(FileInfor fileInfor) {
		this.fileInfor = fileInfor;
	}

	public String getFileContentType() {
		return fileContentType;
	}

	public void setFileContentType(String fileContentType) {
		this.fileContentType = fileContentType;
	}

	public FileInfor getUploadFileInfor() {
		return uploadFileInfor;
	}

	public void setUploadFileInfor(FileInfor uploadFileInfor) {
		this.uploadFileInfor = uploadFileInfor;
	}

	public String getOldpwd() {
		return oldpwd;
	}

	public void setOldpwd(String oldpwd) {
		this.oldpwd = oldpwd;
	}

	public String getNewpwd() {
		return newpwd;
	}

	public void setNewpwd(String newpwd) {
		this.newpwd = newpwd;
	}

	public String getUploadTitle() {
		return uploadTitle;
	}

	public void setUploadTitle(String uploadTitle) {
		this.uploadTitle = uploadTitle;
	}

	public String getUploadDescribe() {
		return uploadDescribe;
	}

	public void setUploadDescribe(String uploadDescribe) {
		this.uploadDescribe = uploadDescribe;
	}

	public String getUploadKeywords() {
		return uploadKeywords;
	}

	public void setUploadKeywords(String uploadKeywords) {
		this.uploadKeywords = uploadKeywords;
	}

	public String getUploadVersionDescribe() {
		return uploadVersionDescribe;
	}

	public void setUploadVersionDescribe(String uploadVersionDescribe) {
		this.uploadVersionDescribe = uploadVersionDescribe;
	}

}
